It has recently been possible for small mobile information terminals such as cellular phones to download and execute applications. Examples of their execution environments include those executing only one application at a time and those starting and executing a plurality of applications as many as memories permit at the same time.
From the viewpoint of contents providers who provide services, however, phenomena such as drop in speed by half, shortage of memory, and occurrence of errors due to the lack of necessary hardware resources are more likely to occur in an environment in which a plurality of applications are executed at the same time than in the case where a single application is executed alone, since a single CPU or memory resource is shared by a plurality of applications against intentions of users and contents creators in the former.
Thus, in application platforms for providing services of contents providers, services cannot be provided stably when applications are executed in a multiplex manner. Therefore, in many cases, a single-execution environment in which only one application is run at a time has been employed or, even in a multiplex-execution state in which a plurality of applications can be started at the same time, only one application is executed while the other applications are stopped, so as to stabilize services.
Some cellular phone terminals (e.g., smartphones) which enable the multiplex-execution state, on the other hand, have been hard to provide with services in stable speed/operation environment, required their end users themselves to terminate applications which heavily consume CPU resources, and so forth, and thus are usable only by users with high literacy.
As a technique for executing a plurality of applications while efficiently switching among them on a limited resource, one disclosed in Patent Literature 1 has been proposed.